﻿using System;
using System.Collections.Generic;
using System.Text;
using Newtonsoft.Json;

namespace DEEBCG.ExternalLib.CompanyAPI.Model
{
    /// <summary>
    /// 基本体征信息
    /// </summary>
    public class BasicSignsDayReportInfo
    {

        /// <summary>
        /// 报表编号
        /// </summary>
        public int ReportID { set; get; }

        /// <summary>用户编号</summary>
        public string UserID { get; set; } = "";

        /// <summary>设备编号</summary>
        public string DeviceID { get; set; } = "";
        /// <summary>报表日期</summary>
        public DateTime ReportDate
        {
            get;
            set;
        }

        /// <summary>
        /// 睡眠评级
        /// </summary>
        [JsonIgnore]
        public string SleepLevel
        {
            set; get;
        }

        /// <summary>
        /// 深睡比例
        /// </summary>
        [JsonIgnore]
        public double? DeepSleepScale
        {
            set;
            get;
        }

        /// <summary>
        /// 心跳变异度
        /// </summary>
        public double? SDNN
        {
            set;
            get;
        }

        /// <summary>
        /// 呼吸变异度
        /// </summary>
        public double? CVBR
        {
            set;
            get;
        }


        /// <summary>上床时间</summary>
        public DateTime StartOnBedTime
        {
            get;
            set;
        }
        /// <summary>起床时间</summary>
        public DateTime? EndOnBedTime
        {
            get;
            set;
        }
        /// <summary>入睡时间</summary>
        public DateTime? StartSleepTime
        {
            get;
            set;
        }
        /// <summary>醒来时间</summary>
        public DateTime? EndSleepTime
        {
            get;
            set;
        }
        /// <summary>在床时长</summary>
        public double? TotalOnBedHours
        {
            get;
            set;
        }
        /// <summary>睡眠时长</summary>
        public double? TotalSleepHours
        {
            get;
            set;
        }
        /// <summary>睡眠活动次数</summary>
        public int? SleepActityCount
        {
            get;
            set;
        }
        /// <summary>睡眠平均心率</summary>
        public double? SleepAvgHeartRate
        {
            get;
            set;
        }
        /// <summary>睡眠平均呼吸</summary>
        public double? SleepAvgBreatheRate
        {
            get;
            set;
        }
        /// <summary>睡眠平均室温</summary>
        public double? SleepAvgTemperature
        {
            get;
            set;
        }
        /// <summary>起夜次数</summary>
        public int? OutBedInSleepCount
        {
            get;
            set;
        }
        /// <summary>起夜总时长</summary>
        public double? TotalOutBedInSleepMinute
        {
            get;
            set;
        }

        /// <summary>是否有午休</summary>
        [JsonIgnore]
        public bool HasSiesta
        {
            get;
            set;
        }
        /// <summary>午休次数</summary>
        [JsonIgnore]
        public int? SiestaCount
        {
            get;
            set;
        }

        /// <summary>午休总时长</summary>
        [JsonIgnore]
        public double? TotalSiestaHours
        {
            get;
            set;
        }

        /// <summary>
        /// 睡眠平均吸气呼气比例
        /// </summary>
        public double? AvgInhaleExhaleScale
        {
            set;
            get;
        }


        /// <summary>
        /// 睡眠平均血压
        /// </summary>
        public double? SleepAvgBloodPressure
        {
            set;
            get;
        }

        /// <summary>
        /// 是否有打鼾情况（0无）
        /// </summary>
        public int HasSnore
        {
            set;
            get;
        }

        /// <summary>
        /// 平均打鼾频率
        /// </summary>
        public double? SleepAvgSnoreRate
        {
            set;
            get;
        }


        /// <summary>
        /// 晨脉(醒来时,0表示未找到)
        /// </summary>
        public double? MorningVeins1
        {
            get;
            set;
        }

        /// <summary>
        /// 晨脉(醒来前,0表示未找到)
        /// </summary>
        public double? MorningVeins2
        {
            get;
            set;
        }


        /// <summary>
        /// 睡眠发生低通的次数
        /// </summary>
        public int? SleepApneaCount
        {
            get;
            set;
        }

        /// <summary>
        /// 平均呼吸低通时长
        /// </summary>
        public double? AvgApneaInterval
        {
            get;
            set;
        }

    }
}
